package com.jarvan.service;

import com.jarvan.model.Station;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

public interface StationService {
    /**
     * 新建站点
     * @param station 站点对象
     * @return Station对象
     */
    Station save(Station station);

    /**
     * 通过Id查找
     * @param stationId 站点id
     * @return Station对象
     */
    Station findById(Integer stationId);

    /**
     * 通过站点标识查找
     * @param stationNum 站点标识
     * @return Station实例对象
     */
    Station findByNum(String stationNum);

    /**
     * 站点名查找模糊查找
     * @param stationName 站点名
     * @return 站点列表
     */
   Station findbyStationName(String stationName);

    /**
     * 分页显示所有站点
     * @param pageable 分页实例
     * @return 分页对象
     */
    Page<Station> findAll(Pageable pageable);

    /**
     * 通过city查找
     * @param bindCity 城市名
     * @return Station列表
     */
    List<Station> findByCity(String bindCity);

    /**
     * 通过省份查找
     * @param bindProvince 省份名
     * @return Station列表
     */
    List<Station> findByProvince(String bindProvince);

    List<Station> findByStatus(Integer status);
}
